GtkDestroyNotify destroy)
{
GtkObjectData *odata;
- GtkObjectData *prev;
g_return_if_fail (object != NULL);
g_return_if_fail (GTK_IS_OBJECT (object));
odata = object->object_data;
if (!data)
{
+ GtkObjectData *prev;
+
prev = NULL;
while (odata)
}
else
{
+ GtkObjectData *prev;
+
+ prev = NULL;
+
while (odata)
{
if (odata->id == data_id)
odata->destroy = destroy;
return;
}
-
- odata = odata->next;
+
+ prev = odata;
+ odata = prev->next;
}
if (gtk_object_data_free_list)
guint line,
gboolean do_ref)
{
- gboolean exists;
-
if (gtk_debug_flags & GTK_DEBUG_OBJECTS)
{
+ gboolean exists = TRUE;
+
g_return_if_fail (object != NULL);
g_return_if_fail (GTK_IS_OBJECT (object));
+#ifdef G_ENABLE_DEBUG
exists = g_hash_table_lookup (living_objs_ht, object) != NULL;
+#endif /* !G_ENABLE_DEBUG */
if (exists &&
(object == gtk_trace_object ||